// pages/index/index.ts
const app = getApp();
// 轮播图范式
interface SwiperItem {
  ImageUrl: string,
  Url: string
};
// 获取数据类型范式
interface DataType {
  type: "研学课程" | "冬夏令营" | "亲子活动",
  [key: number]: string,
}
let swiperItem: Array<SwiperItem> = [];

import { GetClubNews } from '../../utils/data/apis';
import msg from '../../utils/model/msg';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    swiperItem: swiperItem, // 轮播图
    activities: '', // 火热报名中
    history: '', // 活动回顾
  },
  //  获取轮播图数据
  getSwiperItem: function (): void {
    swiperItem = [{
      ImageUrl: `${app.globalData.imgUrl}turn_img1.jpg`,
      Url: '',
    }, {
      ImageUrl: `${app.globalData.imgUrl}turn_img2.jpg`,
      Url: '',
    }, {
      ImageUrl: `${app.globalData.imgUrl}turn_img3.jpg`,
      Url: '',
    }
    ];
    this.setData({
      swiperItem: swiperItem,
    })
  },
  /**
   * @function 获取首页推送数据
   */
  readData: async function (e?: DataType) {
    msg.Loading();
    let type: string;
    if (e) {
      type = e.type;
    }
    else {
      type = "研学课程";
    }
    if (type) {
      const that = this;
      await GetClubNews({ id: type })
        .then((res: any) => {
          if (res.data) {
            console.log(res.data);
            that.setData({
              activities: res.data.data,
              history: res.data.history,
            })
          }
          else {
            msg.Fail('连接超时');
          }
        })
        .catch((err) => {
          console.error(err);
          msg.Fail('连接错误');
        })
      msg.HideLoading();
    }
  },

  /**
   * @function 切换数据类型
   */
  pickerChange: function(e: any) {
    if(e.detail.type) {
      console.log(e.detail.type);
      this.readData({type: e.detail.type});
    }
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad() {
    this.getSwiperItem();
    this.readData();
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})